
 class MyClass {
    public int x; // 公共访问级别
    protected int y; // 受保护的访问级别
    int z; // 默认（包级别）的访问级别
    private int w; // 私有的访问级别

    public void foo() {
        // 在类内部可以访问所有成员变量
        x = 1;
        y = 2;
        z = 3;
        w = 4;
        System.out.println("hello world");
    }
}

class visit {
    public static void main(String[] args) {
        MyClass obj = new MyClass();

        // 可以访问公共和受保护的成员变量，但不能访问默认和私有的成员变量
        obj.x = 1;
        obj.y = 2;
        System.out.printf("x=%d\n",obj.x);
        System.out.printf("y=%d\n",obj.y);
        // 下面两行代码会报错，因为 z 和 w 的访问级别不允许从外部访问
        obj.z = 3;
        System.out.printf("z=%d\n",obj.z);
        //obj.w = 4;
        obj.foo();
    }
}
